# @author : sentry
# @since : 2023-09-07
# 水仙花数

"""
水仙花数也被称为超完全数字不变数、自恋数、自幂
数、阿姆斯壮数或阿姆斯特朗数，水仙花数是指一个
3位数，它的每个位上的数字的3次幂之和等于它本身。
"""
print('100到1000之间的所有水仙花数')
print('=' * 50)
for i in range(100, 1000):
    # 百位数字
    a = i // 100
    # 十位数字
    b = i // 10 % 10
    # 个位数字
    c = i % 10

    if a ** 3 + b ** 3 + c ** 3 == i:
        print(f'{i}是水仙花数')

print('=' * 20 + 'while方法实现' + '=' * 20)
count = 100
while count < 1000:
    # 百位数字
    x = count // 100
    # 十位数字
    y = count // 10 % 10
    # 个位数字
    z = count % 10

    if x ** 3 + y ** 3 + z ** 3 == count:
        print(f'{count}是水仙花数')

    count += 1
